Many video formats such as AVI require random access in files in order to play videos. Unfortunately, there are no abort operation once a request for data from a HTTP server is placed. There are several ways to overcome the lack of abort operation from a HTTP server. In one method, the amount of data to be requested each time is already exactly known. In another method, the entire file is cached. In another method, a new HTTP connection is opened. However, all these operations are fairly slow.